package com.haiyou.common.constants.game;

import java.util.Calendar;

public class GameConstants {
	
	/***************************** 字符串 ************************************/
	/**"_"*/
	public static final String FORMAT_UNDERLINE = "_";
	/**"|"*/
	public static final String FORMAT_VERTICALLINE = "|";
	/**","*/
	public static final String FORMAT_COMMA = ",";
	/**"&"*/
	public static final String FORMAT_AND = "&";
	/**";"*/
	public static final String FORMAT_SEMICOLON = ";";
	/**"="*/
	public static final String FORMAT_EQUAL = "=";
	/**"#"*/
	public static final String FORMAT_WELL = "#";
	/**"@"*/
	public static final String FORMAT_EIDT = "@";
	
	/**拆"_"*/
	public static final String PARSE_UNDERLINE = "\\_";
	/**拆"|"*/
	public static final String PARSE_VERTICALLINE = "\\|";
	/**拆","*/
	public static final String PARSE_COMMA = "\\,";
	/**拆"&"*/
	public static final String PARSE_AND = "\\&";
	/**拆";"*/
	public static final String PARSE_SEMICOLON = "\\;";
	/**拆"="*/
	public static final String PARSE_EQUAL = "\\=";
	/**拆"#"*/
	public static final String PARSE_WELL = "\\#";
	/**拆"@"*/
	public static final String PARSE_EIDT = "\\@";
	/**拆":"*/
	public static final String PARSE_COLON = "\\:";
	
	
	/***************************** 登录 **********************************/
	/** http头*/
	public static final String HTTP = "http://";
	public static final String VALIDATE_ERROE = "error";
	public static final String VALIDATE_OK = "ok";
	
	/** 时区*/
	public static final int ZONE = Calendar.getInstance().get(Calendar.ZONE_OFFSET)/(60*60*1000);
	/*****************************属性************************************/
	/** 所有属性的个数 */
	public static final int TOTAL_LENGTH = 61;
//	/** 百分比属性开始索引号 */
//	public static final int PC_INDEX_START = 9;
//	/** 百分比属性结束索引号 */
//	public static final int PC_INDEX_END = 17;
	/** 百分百的整数值 */
	public static final double ONE_HUNDRED_PERCENT_VALUE = 10000;
	/** 百分百的整数值 */
	public static final int ONE_HUNDRED_PERCENT = 10000;
	
	/***************************** net ************************************/
	/** 逻辑线程池线程，cpu核心数倍数*/
	public static final int LOGIC_POOL_THREAD_MULTIPLE = 4;
	
	/***************************** 通用 ************************************/
	/** 玩家缓存时间*/
	public static final int MAX_USER_CACHE_TIME = 60 * 10 * 1000;
	public static final int MAX_USER_CACHE_SIZE = 2000;
	/** 每个服务器玩家最大数量*/
	public static final int USER_SERVER_NUM = 131072;
	/** 玩家id位移位数*/
	public static final byte USER_DRIFT = 17;//131072
	/** 玩家id位偏移最大值*/
	public static final int USER_MAX = (1 << USER_DRIFT) - 1;
	
	/** 默认公告id*/
	public static final int NOTICE_ID = 0;
	/** 每次重置小时数-凌晨0点*/
	public static final int RESET_HOUR0 = 0;
	/** 每次重置小时数-凌晨4点*/ //业务需要修改成0
	public static final int RESET_HOUR4 = RESET_HOUR0;
	/** 跨服分组起始值*/
	public static final int GROUP_ID_LIMIT = 100000;
	
	public interface DropNotice{
		/** 自动*/
		byte AUTO = 127;
		/** 不弹奖励*/
		byte TYPE0 = 0;
		/** 普通恭喜获得*/
		byte TYPE1 = 1;
		/** 文字显示*/
		byte TYPE2 = 2;
		/** 带小白恭喜获得*/
		byte TYPE3 = 3;
	}
	
	/**
	 * 名称类型
	 */
	public interface NameType{
		/** 充值类型*/
		int TYPE1 = 1;
		/** 价格类型*/
		int TYPE2 = 2;
		/** 物品类型*/
		int TYPE3 = 3;
		/** 渠道类型*/
		int TYPE4 = 4;
	}
	
	/**
	 * 跳转表类型
	 */
	public interface GotoType{
		/** 九宫飞星*/
		byte TYPE1 = 1;
		/** 主题仙灵*/
		byte TYPE2 = 2;
		/** 通用任务*/
		byte TYPE3 = 3;
	}

	/**
	 * 实例类型
	 */
	public interface InsType{
		/** 仙灵*/
		byte TYPE1 = 1;
		/** 神兵*/
		byte TYPE2 = 2;
		/** 仙灵神兵*/
		byte TYPE3 = 3;
		/** 命格*/
		byte TYPE4 = 4;
		/** 天书*/
		byte TYPE5 = 5;
	}
	
	/**
	 * 数据时间类型
	 */
	public interface TimeType{
		/** 每日*/
		byte TYPE1 = 1;
		/** 周期内*/
		byte TYPE2 = 2;
	}
	
	
	/**
	 * 排行榜
	 * 
	 * @author xingyuan
	 * @date 2023年8月5日 下午3:22:44
	 */
	public interface RankV2{
		int rank_step = 50; 
	}
	
	
	/**
	 * 
	 * @Description: 充值
	 * @author xingyuan
	 * @date 2022年11月4日 下午3:02:38
	 */
	public interface Recharge{
		
		/**
		 * order redis 中key
		 */
		String order_redis_key_format = "gpord-{}";
		
		int order_status_0 = 0;
		
		/**
		 * 已经发奖
		 */
		int order_status_1 = 1;
		
		/**
		 * 首充标记
		 */
		int first_recharge = 0;
		
		int first_recharge_no = 1;
		
		/**
		 * 0.未领取
		 */
		int pay_back_reward_status_0 = 0;
		/**
		 *  1.已领取
		 */
		int pay_back_reward_status_1 = 1;

	}
	
}
